﻿using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Awesome.ClientID;

namespace TestSite
{
    public partial class Default : System.Web.UI.Page
    {
        [CanSerializeProperty]
        public string PublicProperty
        {
            get { return "Working"; }
        }

        [CanSerializeProperty]
        protected string ProtectedProperty
        {
            get { return "Working"; }
        }

        [CanSerializeProperty]
        public static string PublicStaticProperty
        {
            get { return "Working"; }
        }

        [CanSerializeProperty]
        protected static string ProtectedStaticProperty
        {
            get { return "Working"; }
        }

        IDictionary<string, string> _testDictionary;
        IList<string> _testList;

        [CanSerializeProperty]
        protected IDictionary<string, string> DictionaryTest
        {
            get
            {
                return _testDictionary;
            }
        }

        [CanSerializeProperty]
        protected IList<string> ListTest
        {
            get
            {
                return _testList;
            }
        }

        protected void Page_Load(object sender, EventArgs e)
        {
            _testDictionary = new Dictionary<string, string>()
                                  {
                                      {"Key1", "Value1"},
                                      {"Key2", "Value2"},
                                      {"Key3", "Value3"}
                                  };

            _testList = new List<string>()
                            {
                                "Value 1",
                                "Value 2",
                                "Value 3",
                                "Value 4"
                            };
        }
    }
}